package com.shuoyue.adven.view;

import android.content.Context;
import android.content.res.TypedArray;
import android.util.AttributeSet;

import androidx.annotation.Nullable;

import com.shuoyue.adven.R;

/**
 * Created by xz on 2017/5/9 0009.
 * 比例ImageView
 */

public class XProportionImageView extends androidx.appcompat.widget.AppCompatImageView {

    private final float mWidthRatio;//宽比例
    private final float mHeightRatio;//高比例

    public XProportionImageView(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
        TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.XProportionImageView);
        mWidthRatio = typedArray.getFloat(R.styleable.XProportionImageView_xWidthRatio, -1);
        mHeightRatio = typedArray.getFloat(R.styleable.XProportionImageView_xHeightRatio, -1);
        typedArray.recycle();
    }


    @Override
    protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
        super.onMeasure(widthMeasureSpec, heightMeasureSpec);

        if (mWidthRatio != -1 && mHeightRatio != -1) {
            final int widthSize = MeasureSpec.getSize(widthMeasureSpec);
            final int heightSize = MeasureSpec.getSize(heightMeasureSpec);
            int newHeight = widthSize * 9 / 16;
//            int newHeight2 = Math.round(widthSize * mHeightRatio / mWidthRatio);
            setMeasuredDimension(widthSize, Math.round(widthSize * mHeightRatio / mWidthRatio));
//            setMeasuredDimension(widthSize, newHeight);
        }
    }
}
